Website powered by

Lava lamp simulation + Breakdown

Lava lamp is a personal project I've wanted to do since SideFX implemented fluids in vellum.
https://www.behance.net/gallery/194197537/Lava-Lamp-Simulation-Breakdown
Here you can find a little more detailed breakdown:

Breakdown:

1) raw sim. 2) secondary sim. 3) meshed vdb. 4) tiny advected particles. 5) render.

How it works.

How it works.

1. I modelled a shape of glass part and made fluid particles from this.
2. Added initial temperature for speed up preroll. 

1. I modelled a shape of glass part and made fluid particles from this.
2. Added initial temperature for speed up preroll. 

On the left you can see visualization of the @temperature attribute. ​​​​​​​
Floating and sinking are driven by @temperature like his:
force = set(0, @temperature, 0);

How I calculate @temperature, nothing special just fitted @P.y

How I calculate @temperature, nothing special just fitted @P.y

Surface tension is also driven by @P.y. I found values using wedges, which I will explain below.

Surface tension is also driven by @P.y. I found values using wedges, which I will explain below.

By the way, these YouTube 10-hour lava lamp videos with relaxing music accompanied me throughout this project on my second monitor.
 
 
Then how I detected detached bubbles:

By the way, these YouTube 10-hour lava lamp videos with relaxing music accompanied me throughout this project on my second monitor.


Then how I detected detached bubbles:

After the main logic is done, it's time to achieve a realistic look. And that's when it's time for wedges.

After the main logic is done, it's time to achieve a realistic look. And that's when it's time for wedges.

​​​​​​​Then I created 3 parameters in the fileSOP, in my case, that will form the folder name for me, such as "2_1_1". This way, I can quickly change the folder name and observe how each parameter independently affects the look. 

​​​​​​​Then I created 3 parameters in the fileSOP, in my case, that will form the folder name for me, such as "2_1_1". This way, I can quickly change the folder name and observe how each parameter independently affects the look. 

​​​​Secondary postprocess simulation. It's the second one in the video below the breakdown section begins. I used a softpin constraint with Increasing Stiffness Dropoff and a value of 0.2. 

That's all I wanted to show. I hope you like it and find something useful for you. If you have any questions, feel free to ask.

That's all I wanted to show. I hope you like it and find something useful for you. If you have any questions, feel free to ask.